package cn.zd.demo.flink.statebackend.dto;

import com.alibaba.fastjson2.JSON;

public class CustInfoDTO {
    private String custNo;
    private CustBaseInfoDTO baseInfoDTO;
    private CustExtendInfoDTO extendInfoDTO;

    public String getCustNo() {
        return baseInfoDTO != null? baseInfoDTO.getCustNo() : extendInfoDTO.getCustNo();
    }


    public CustBaseInfoDTO getBaseInfoDTO() {
        return baseInfoDTO;
    }

    public void setBaseInfoDTO(CustBaseInfoDTO baseInfoDTO) {
        this.baseInfoDTO = baseInfoDTO;
    }

    public CustExtendInfoDTO getExtendInfoDTO() {
        return extendInfoDTO;
    }

    public void setExtendInfoDTO(CustExtendInfoDTO extendInfoDTO) {
        this.extendInfoDTO = extendInfoDTO;
    }

    public boolean isComplate() {
        return baseInfoDTO != null && extendInfoDTO !=null;
    }

    public void combine(CustInfoDTO custInfoDTO) {
        System.out.println("数据输入："+ JSON.toJSONString(custInfoDTO));
        System.out.println("当前数据："+JSON.toJSONString(this));
        if(custInfoDTO.getBaseInfoDTO() != null) {
            this.setBaseInfoDTO(custInfoDTO.getBaseInfoDTO());
        }
        if(custInfoDTO.getExtendInfoDTO() != null) {
            this.setExtendInfoDTO(getExtendInfoDTO());
        }
        System.out.println("数据融合后："+JSON.toJSONString(this));
    }
}
